home *** CD-ROM | disk | FTP | other *** search
/ Aminet 5 / Aminet 5 - March 1995.iso / Aminet / hard / misc / CheckMem.lha / CheckMem.doc < prev    next >
Text File  |  1994-12-11  |  4KB  |  107 lines

  1.     NAME
  2.  
  3.         CheckMem - check any memory while retaining multitasking
  4.  
  5.     FUNCTION
  6.  
  7.         CheckMem is a memory diagnosis tool that can check any memory
  8.         region, even while it is in use, or is unknown to the system.
  9.         CheckMem requires OS 2.01 or later.
  10.  
  11.     USAGE
  12.  
  13.         CheckMem [[FROM] start [TO] end] [TIMES cycles] [FORCE] [QUIET]
  14.         CheckMem FROM,TO,TIMES/N/K,FORCE/S,QUIET/S
  15.         
  16.         SEE THE WARNING SECTION BELOW BEFORE YOU USE CHECKMEM!
  17.  
  18.         Started without arguments, CheckMem will check the memory it finds
  19.         on the Exec memory list. This means all the memory the system knows
  20.         about.
  21.  
  22.         If given a memory region (addresses hexadecimal, with optional
  23.         leading 0x), that region will be checked. CheckMem will first look
  24.         on the Exec memory list whether the system knows that memory
  25.         exists inside the given region. If the system is unaware of the
  26.         memory, CheckMem will abort, unless the FORCE keyword was
  27.         specified. With that keyword, CheckMem will check _any_ address.
  28.         That includes the custom chipset at 0xDFF000, so be *CAREFUL* not
  29.         to specify a region that would include it. Writing to, or even
  30.         reading, the custom chipset registers will cause unexpected
  31.         effects and a certain crash.
  32.         
  33.         Using the QUIET keyword will make CheckMem suppress progress
  34.         information.
  35.  
  36.         CheckMem is Enforcer aware, and will not check unknown addresses
  37.         if it is running. The reason for this is that Enforcer marks,
  38.         using the MMU, unknown memory region out of bounds, and thus
  39.         checking it while Enforcer is running will just create problems
  40.         and not help a bit.
  41.  
  42.         Other MMU tools might have this effect also. CheckMem does not,
  43.         however, look for these. This might create a BIG problem.
  44.  
  45.         In particular, using CheckMem while virtual memory utilities are
  46.         used can create major problems. See the section WARNING below.
  47.  
  48.         CheckMem will let the system go on while memory checking is in
  49.         progress. It checks even the currently allocated memory without
  50.         affecting the programs the memory belongs to.
  51.  
  52.         This is done by checking the memory in small (32 byte) chunks,
  53.         during which the interrupts are disabled. The old contents of the
  54.         memory are placed back after the address is checked against the
  55.         bit patterns 0x00000000, 0xFFFFFFFF, 0x55555555 and 0xAAAAAAAA.
  56.  
  57.         This test can have an effect on timing critical programs. In
  58.         particular, serial I/O can be affected.
  59.         
  60.         Recommended usage:
  61.         Leave CheckMem running for an extended period of time. Not all
  62.         errors happen constantly, so the longer you run it, the more
  63.         likely you are to catch random problems. Try
  64.         CheckMem TIMES 600 QUIET >DF0:CheckMem.log
  65.  
  66.     WARNING
  67.  
  68.         Possible problem areas:
  69.         
  70.         DMA - I can't disable DMA. If your HD controller happens to access
  71.         the memory CheckMem is testing at the very moment, BAD SHIT WILL
  72.         HAPPEN. Solution: Don't access your HD unless you are sure your HD
  73.         controller does not use DMA. Don't use floppies either. There are
  74.         other things to watch out for, but it depends on your system.
  75.         
  76.         MMU - MMU address mapping can create HUGE PROBLEMS. Don't use MMU
  77.         tools (VMM, and GigaMem in particular) while using CheckMem.
  78.         Enforcer shouldn't be a problem.
  79.  
  80.     COPYRIGHT
  81.  
  82.         CheckMem is Copyright © 1994 by Osma Ahvenlampi. All rights
  83.         reserved.
  84.         CheckMem may be freely distributed for no or small fee provided
  85.         that this documentation file is accompanied in unchanged form.
  86.  
  87.     DISCLAIMER
  88.  
  89.         CHECKMEM IS PROVIDED "AS IS". IN USING CHECKMEM, YOU ACCEPT THE
  90.         RESPONSIBILITY FOR ANY DAMAGE OR LOSS THAT MAY OCCUR DURING OR
  91.         BECAUSE OF ITS USE, DIRECTLY OR INDIRECTLY. THE FITNESS OF
  92.         CHECKMEM FOR ANY USE OR PURPOSE IS NOT GUARANTEED. THE AUTHOR IS
  93.         NOT, AND CAN NOT BE HELD LIABLE FOR ANYTHING.
  94.  
  95.     STATUS
  96.  
  97.         CardWare - if you use this program, send a postcard to the author
  98.  
  99.     AUTHOR
  100.  
  101.         Osma Ahvenlampi  <Osma Ahvenlampi@hut.fi>
  102.  
  103.         Osma Ahvenlampi
  104.         Rekipellontie 2 F 55
  105.         00940 Helsinki
  106.         Finland
  107.